export const log = (message?: unknown, ...optionalParams: unknown[]): void => {
	if (process.env.NODE_ENV !== 'production') {
		switch (optionalParams.length) {
			case 0:
				console.log(message);
				break;
			case 1:
				console.log(message, optionalParams[0]);
				break;
			case 2:
				console.log(message, optionalParams[0], optionalParams[1]);
				break;
			case 3:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2]
				);
				break;
			case 4:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3]
				);
				break;
			case 5:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4]
				);
				break;
			case 6:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4],
					optionalParams[5]
				);
				break;
			case 7:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4],
					optionalParams[5],
					optionalParams[6]
				);
				break;
			case 8:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4],
					optionalParams[5],
					optionalParams[6],
					optionalParams[7]
				);
				break;
			case 9:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4],
					optionalParams[5],
					optionalParams[6],
					optionalParams[7],
					optionalParams[8]
				);
				break;
			case 10:
				console.log(
					message,
					optionalParams[0],
					optionalParams[1],
					optionalParams[2],
					optionalParams[3],
					optionalParams[4],
					optionalParams[5],
					optionalParams[6],
					optionalParams[7],
					optionalParams[8],
					optionalParams[9]
				);
				break;
			default:
				console.log(message, optionalParams);
		}
	}
};
